package mysql

import "gorm.io/gorm"

type User struct {
	gorm.Model
	Username string `gorm:"type:varchar(50);not null" json:"username"`
	Password string `gorm:"type:varchar(50);not null" json:"password"`
	Tel      string `gorm:"type:varchar(20);not null" json:"tel"`
	Email    string `gorm:"type:varchar(50);" json:"email"`
}

type Product struct {
	gorm.Model
	Name   string  `gorm:"type:varchar(50);not null" json:"name"`
	Price  float64 `gorm:"type:decimal(10,2);not null" json:"price"`
	Stock  int64   `gorm:"type:int;not null" json:"stock"`
	Img    string  `gorm:"type:varchar(500)" json:"img"`
	Status int64   `gorm:"tinyint(1);default:0;comment:0-已上架 1-已下架"`
}

// 判断商品是否存在
func (p *Product) FindProductByName(db *gorm.DB, name string) error {
	return db.Debug().Where("name = ?", name).First(&p).Error
}

// 商品添加
func (p *Product) ProductAdd(db *gorm.DB) error {
	return db.Debug().Create(&p).Error
}

// 通过商品id判断商品是否存在
func (p *Product) GetProductById(db *gorm.DB, productId int64) error {
	return db.Debug().Where("id = ?", productId).First(&p).Error
}
